home *** CD-ROM | disk | FTP | other *** search
Text File | 1994-04-06 | 72.6 KB | 2,275 lines |
- *********************************************************
- * Update report from ASM-One V1.01 to V1.02 *
- *********************************************************
- Another fine release by Venture...
- Anyway, support quality software like this one, and BUY the original...
-
- Editor:
- =======
-
- - The status line has been extended, so that * means, "Source Not Saved"
- and M means "Macro is being defined".
-
- - When loading a new file, "Source not saved" appears before you enter a
- new filename.
-
- - Replace had problems when replacing successive strings, it skipped every
- second string.
-
-
- Assembler:
- ==========
-
- - If an error occured while assembling a section allocated in chip
- or fast (not public) with autoalloc turned on, the allocated memory
- was forgotten.
-
- - DS - Define Storage. The defined storage is now initialized to zeroes,
- instead of just uninitialized.
-
- - INCLUDE and INCBIN path and filename are printed when the file
- is being loaded.
-
- - The following command syntax was not supported: ROL Dn, ASR Dn etc.
- Previously you had to type ex. ROL #1,D3, instead of just ROL D3.
-
- - Overall assembler performance has been improved.
-
- - Including a source in an program using ORG and LOAD forced the assembler
- back in relative mode, jumping to the latest used section.
-
- - When the message 'Reassembling...' was showed, assembler options was
- reset to default.
-
- - Word size is now always default, also in (An,Xn) <=> (An,Xn.W)
-
- - INCBINs are now only loaded in the last pass, when using
- assemble optimize.
-
-
- Disassembler:
- =============
-
- - CMPA Dn,Am was disassembled CMPA Dn,Dm
-
- - ABCD and SBCD was disassembled wrong
-
- - Unknown command ??????? is now disassembled as DC.W $nnnn, where
- nnnn is the unknown opcode.
-
- - A few other commands was also disassembled a little wrong
-
-
- Debugger:
- =========
-
-
- - Turning LineNumbers on and off did not take action immidiatly but
- first next another function was activated.
-
- - Editing A7 changed always SSP and not USP if in user mode.
-
-
- Preferences:
- ============
-
- - Using option "!" (eg !.ASM) in the ASM_One.pref file, didn't
- change the fact that an .S was attached at the end of the file
- when using the ".S" option.
-
-
- *********************************************************
- * Update report from ASM-One V1.02 to V1.05 *
- *********************************************************
-
- --------======= T.F.A. took over !!!! =======-------
-
-
- Direct line command:
- ====================
-
- - Inserted the Create sinus command
-
- CS include sinus at a memory adress
-
- DEST> Memory destination adress
- BEG> Begin angle
- END> End angle
- AMOUNT> Number of values generated
- AMPLITUDE> Amplitude
- YOFFSET> Yoffset
- SIZE> (B)ytes / (W)ords / (L)ongwords
- MULTIPLIER> Afterwards value multiplier (0 = 1)
- HCORRECTION> Half step correction (Against irritating ticks)
- RCORRECTION> ROUND instead of INT (0,7 = 1 instead of 0)
-
- CSS include sinus in source
-
- BEG> Begin angle
- END> End angle
- AMOUNT> Number of values generated
- AMPLITUDE> Amplitude
- YOFFSET> Yoffset
- SIZE> (B)ytes / (W)ords / (L)ongwords
- MULTIPLIER> Afterwards value multiplier (0 = 1)
- HCORRECTION> Half step correction (Against irritating ticks)
- RCORRECTION> ROUND instead of INT (0,7 = 1 instead of 0)
-
- - Inserted the R {filename}
-
- When using the R / RO / RB commands.
- Read a file without the filename question
-
- - Inserted the W {filename}
-
- When using the W / WO / WB / WL commands.
- Write a file without the filename question
-
- - Inserted the I {filename}
-
- Include a source without the filename question
-
- - Inserted the ZF {filename}
-
- Delete a file without the filename question
-
-
-
- *********************************************************
- * Update report from ASM-One V1.05 to V1.06 *
- * Release date : 07-12-'91 *
- *********************************************************
-
-
- OVERALL
- -------
-
- - Workspace allocation at the (re)start of ASMONE showed total availeble
- memory. Now it shows the LARGEST BLOK availeble memory
-
- - Inserted the CD {directoryname}
-
- Create a directory without leaving asmone
-
-
- BUG REPORTS
- -----------
-
- - The S:ASM-One.pref file was loaded but didn't install right.
- It does that correct now.
-
- - The !.ASM command wasn't recognized. It acted thow it was an exit request.
- Now u can change the 'FILE . EXTENSION' in anything u want up to 3 characters
- B.V. : !.ASM will be set to {filename}.ASM
- or !.PRICE will be set to {filename}.PRI
-
- NOTE #1 : This only has effect when u have the SOURCE .??? menu item enabled
- NOTE #2 : It didn't work in the original V1.02 by RUNE Gram-Madsen !!!!!!
-
-
- ASSEMBLER
- ---------
-
- - INCBIN / INCLUDE
- Changed the INCLUDED BINAIRY FILE and INCLUDED SOURCE FILE line. It now
- only shows one line including the file lenght instead of taking up two lines
-
- - Comments
- Now ASMONE recognizes the * as a remark (The same as ;)
-
-
-
- *********************************************************
- * Update report from ASM-One V1.06 to V1.07 *
- * Release date : 21-03-'92 *
- *********************************************************
-
- BUG REPORT
- ----------
-
- - When u use ALL the chipmem to work with sometimes the pull down menu's
- couldn't be reached. And when u had Req.library ON in the preferences it was
- impossible to do anything that uses the req.library !! Now the memory will be
- checked and if there is insufficient free chip mem the req.library function
- will be automaticly disabled.
-
-
- ASSEMBLER
- ---------
-
- - INCBIN / INCLUDE
- When u set the INCDIR directory to something else than your current directory
- Asm-one didn't look for the incbin files in the current dir but the last
- INCDIR !! Now Asm-one will first look in the INCDIR. If the file isn't found
- there it will look at the current dir.
-
-
- OVERALL
- -------
-
- - DOS-EXECUTE
- Implanted a little version of the dos execute command. This one is very
- simple. It just uses the normal dos-execute library jump !!! (so be sure
- to have RUN in your C: directory)
-
- usage : Y Diskmaster (will start diskmaster, if found)
- Y Xcopy (will start Xcopy, if found)
-
-
-
- *********************************************************
- * Update report from ASM-One V1.07 to V1.07b *
- * Release date : 23-03-'92 *
- *********************************************************
-
- OVERALL
- -------
-
- - Go command fixed
- Ever since the ASM-One V1.05 the go command was fucked up cause of some
- bytes added in a bss section. Now this is fixed.
-
-
- *********************************************************
- * Update report from ASM-One V1.07 (a/b) to V1.08 *
- * Release date : 01-08-'92 *
- * Prime '92 party *
- *********************************************************
-
-
- ASSEMBLER
- ---------
-
- - ALIGN
- Added the ALIGN directive for compatibility reasons.
-
-
- OVERALL
- -------
-
- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- ! Asm-One V1.08 now has an internal stack of 16 Kb !
- ! !
- ! This use to be 4 Kb, that's why some programs did assemble but gave a GURU !
- ! when trying to write the object.......... !
- ! !
- ! P.S. it took us a (too) long time to find that out, SORRY for that !
- ! !
- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-
- - V {Directory command}
- Changed the free blocks in free bytes !!!
-
- - =
- Changed the view of the = command to a more decent look.
-
- - When asmone was copied to RAD: and you had an reset the system crashed.
- This should be over now. (Thanx Nic {End of century 1999})
-
- - Some requesters still showed "ASMONE V1.02". This has been corrected now.
-
- - If you had a source extension with a length of 4 (like .ASM) the last
- character wasn't written correct to the S:ASM-ONE.PREF file. this is
- corrected now.
-
- - Some words mist a 'l' (Like aLocate Fast/Chip/Absolute) this is correct now.
-
-
- NEW
- ---
-
- - Extended the marks to 10. So now you can set 10 marks and jump to them.
- Look at the menu's for the keys.
-
- - =C
- Someone complaint about the colors of asm-one. I sugested that he changed
- the workbench colors. Asm-one uses the default colors !!
- Now you can set your own colors. Just adjust the color to your wishes.
- The default button will reset the colors to workbench colors....
-
- - Standard directory : you can specify a standard directory to which asmone
- switches as soon as you start ASM-ONE up.
-
- put this in your S:ASM-ONE.pref (must be at the end of the + and -
- but before the \)
-
- *DH0:SOURCES/MAIN
-
- This will cause asm-one to startup normaly but when you use 'V' it will
- allready be in the DH0:SOURCES/MAIN directory.
-
- The standard directory will be shown at the start of ASM-ONE
-
- When writting your prefs (WP) the directoryname will be saved too.
-
-
- *********************************************************
- * Update report from ASM-One V1.08 to V1.08b *
- * Release date : 04-08-'92 *
- *********************************************************
-
- OVERALL
- -------
-
- - If in 2 bitplane mode asm-one V1.08 guru'ed when you wanted to use chip
- mem. Sometimes it even fucked up your screen (Thanx Crew one)
-
- - Some words were misspelled.
-
-
-
- *********************************************************
- * Update report from ASM-One V1.08b to V1.09 *
- * Release date : 11-11-'92 *
- *********************************************************
-
- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- + MESSAGE TO DEFTRONIC OF CRIONICS +
- + +
- + I liked your TRASH'M-one V1.4 but : +
- + +
- + Why did you steal our create sinus routine ??????????? +
- + Why did you steal our create directory ???????? +
- + Why didn't you mention our name ????????? +
- + +
- + I think your coding is nice but when you use OUR coding you should mention +
- + our name and not take all the credits for stuff you didn't do !!!!!!! +
- + +
- + B.T.W. your G (go command) bug's => Like in our Asm-One V1.06 +
- + your Find/Replace command bug's => Like in our Asm-One V1.06 +
- + when using more than 4Kb of label +
- + pointers WO make trash'm crash => Like in our Asm-One V1.06 +
- + +
- + Since you added a lot of nice function's in your version i dicided to +
- + use some of it (Adjusted to our needs offcause). +
- + +
- + AND GUESS WHAT ????????? +
- + +
- + We will mention your name !!!!!! +
- + +
- + Just keep coding but please be fair and give credits where they belong ! +
- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-
- ASSEMBLER
- ---------
-
- - ENDB (Endbasereg) implanted.
- In previous versions of Asm-One it was possible to use a Baseregister like
- in C programms. Once used the register couldn't be used anymore.
- Now you can end a basereg part of source with endb.
-
- SYNTAX:
-
- ENDB {Adress register}
-
- - Implanted the use of parameters. This means you can simulate a CLI startup
- In the Assmbler menu you will find a new item called Parameters. Here you
- can set if you whish to use parameters at the start of a programm.
- (Also in the debugger the parameters will be set.)
- ** SEE new PS command **
-
-
- - Implanted a percentage progress indicator (Optional)
- >>>>>>> coding done by Deftronic, adjusted to needs by T.F.A. <<<<<<<<
-
-
- OVERALL
- -------
-
- - Implanted the Binairy view command (@B)
- This will show memory (like @H or @N) but now in binairy form
- >>>>>>> coding done by Deftronic, adjusted to needs by T.F.A. <<<<<<<<
-
- - Implanted include binairy (IB)
- This will include lines in your source (like IN,ID,IH) but now
- in binairy form.
- >>>>>>> coding done by Deftronic, adjusted to needs by T.F.A. <<<<<<<<
-
- - When writing a binairy file the filecheck and deletion of the file will
- now happen when you have entered the START and END. If you break during
- this procedure the file will not be deleted !!!!
- {Thanx Remote-control}
-
- - PS (Parameters set)
- Enter this command at the command line and you will be prompted for the
- parameter list. This way you can simulate a cli command....
-
- - Implanted the choise of Public mem at the (re)start of ASM-ONE on request.
-
- - Replaced the req.library with the REQTOOLS.library.
-
- This means that all requesters can now be answered with keystrokes as
- well !!. Req.library missed some options reqtools.library does have.
-
- !!!!!!!!! Make sure reqtools.library is copied to your workdisk !!!!!!!!!!
-
- On the Asm-One disk are the 1.3 and 2.0 verison of REQTOOLS.
- Use the correct one.....
-
- If the reqtools library wasn't found the Project/Preferences/reqtoolslib
- will be dissabled. All functions will be redirected to normal text.
- The colour request (=C) WON'T WORK !!!!!
-
- Just like in the req.library 3 different directory's will be maintained.
-
-
- dir 1 = Sources dir => used with : Read source
- Write source
-
- dir 2 = binairy dir => used with : Read binairy
- Write binairy
- Read object
- Write object
- Write linkfile
- Redirected output
- Zap file
-
- dir 3 = secondairy source => used with : Write block
- Insert source
-
-
- - Implanted the EXTENDED REQTOOLS library functions. The Search and Replace
- function can now be handled thru requesters. This is optional in the prefs.
- You can set the PROJECT/Preferences/Extreqtools ON or OFF. (This will be
- saved in your S:ASM-ONE.PREF file as +XR or -XR)
-
- - Jump to line function will also be handled thru a requester if the
- extended reqtools function is turned on...
-
- - When searching in a source and working with the extended reqtools you
- will be able to search for strings in case dependent mode. This means you
- can search for strings with UPPER and LOWER case characters in it.
-
- VB: Case dependent search for Mainloop
- will only find this string if it is identical.
- Normal search for Mainloop
- will find anything with 'mainloop' in it no matter what case !!!
-
- When using the replace function the string will be replaced as entered.
- So '_LVO' is different than '_LVo'.
-
- When using the Search_next or Replace_next function the mode you used
- will be continued.
-
- - When using the {R} command to read a source and you canceled the request
- your source was gone empty. Now your source will stay active if you
- cancel the requester or press CTRL-C when asked for the filename.
-
- - When updating a file first is checked if the source is changed. If the
- source isn't changed the message : "Source not changed. No update needed !!"
- is displayed and no file will be written.
-
- - When trying to load a source bigger than the availeble memory asm-one
- would read the source anyway and then come up with a error. When still
- trying to jump into the editor Asm-One would crash !!! {Sometimes}
- Now when trying to load a source bigger than the availeble memory Asm-One
- will display the message "Not enough workmem for source !!" and the last
- source will still be active
-
- - Since Asm-One v1.08 you could set your own colors. Now Asm-One will save
- your color to the S:Asm-One.pref file.
- This will be done in the following format :
-
- |000|AAA|FFF|68B| {These are the standard workbench colors !!}
-
- | = Colors init
- 000 = RGB value (color 0 = black)
- | = Color seperator
- AAA = RGB value (color 1 = light grey)
- | = Color seperator
- FFF = RGB value (color 2 = white)
- | = Color seperator
- 68B = RGB value (color 3 = blue)
- | = Color end marker
-
- The easyest way to do this is start Asm-One, set your colors (using =C), then
- write the S:Asm-One.pref file (using WP). This way your colors will be saved
- and used in the future. It could be posssible that Asm-One creates strange
- colors if you edit the Asm-One.pref file in a text editor !!, SO DON'T !!!!
-
- - If running under kickstart 2.0 or higher Asm-One will open it's screen in the
- workbench 2.x mode. This doesn't have much of a consiquence expect for the
- nice look of the requesters.
-
- If running under kickstart 1.3 or lower Asm-One will open it's screen in
- normal (and only) mode. This almost doesn't infect the requesters.
- THEY STILL LOOK GREAT !!!
-
- - When creating a directory twice (with cd) and the second name was shorter
- then the first it bugged. This is now solved
-
-
- EDITOR
- ------
-
- - Sometimes the search/replace command would hang. This was in Asm-One
- since V1.01 by Rune Gram-madsen. This is now solved !!!
-
-
-
- *****************************************************************************
- * *
- * ASM-ONE is now a 680x0 Macro assembler !! *
- * *
- * Special thanx must go to : Remote-control (R.A.F.) *
- * Schwarzenegger (R.A.F.) *
- * *
- * They provided me with all the information i needed about the 680x0 *
- * *
- * *
- *****************************************************************************
-
- *********************************************************
- * Update report from ASM-One V1.09 to V1.15 *
- * Release date : 11-03-'93 *
- *********************************************************
-
-
- - Only in the Kickstart 2.x/3.0 version. In this version you can set all your
- preferences in one window. This window is activated by pressing AMIGA-P.
- This function can be called at all times (Expect in debugger).
- This means you can change your preferences when in Editor, Command line ,
- Binary Monitor, Hexidecimal Monitor, Disassembly Monitor.
-
-
- - Whenever the _LVOOutput dos call was used it returned a 0 (within Asm-One)
- Now it returns the output handle of the CLI you called Asm-One from.
-
- (i finaly found out the problem... Thanx T.J.)
-
-
- - Update will (finaly) write your source were you read it from !!!!
- When you change your current directory (with the V command)
- and therafter update your source it will be written in the correct place.
-
- (Thanx to all who mentioned this !!! => and there were many who did)
-
-
- - Reqtools bug removed. I used a absolute offset for the directory name. So
- if someone used another version of the reqtools.library the whole thing
- didn't work. Now it does !!!
-
- (Thanx CFI !!!)
-
- - When you write a source the filename you see in the menubar will be placed
- in the requester.
-
-
-
- COMMAND LINE
- ------------
-
- - Added keyboard exit for all you keyboard lovers (including me!!)
- Amiga-Q is the same as entering !{enter}
-
- - Added the VBR register in the register-information command (X)
-
- - Adjusted the custom register information.
-
- Now you can press CTRL-C or Esc when you want to quit at the middle of the
- registers list..
-
- - Adjusted the directory command.
-
- The listing of a directory scrolls untill the screen is full. Then it will
- wait for a key.
-
- If the CTRL-C or ESC key is hit the directory will be aborted
-
- >> when using the V command after an aborted directory will show the memory
- >> directory so not all files on disk will be shown !!!
-
-
- MONITOR
- -------
-
- - Implanted the binary monitor. (Only byte and word size)
- look at the menu's for more details.
-
- All function's of the Hex- and Ascii monitor are availeble.
-
- Filled the empty bottomline with some info :
-
- Start : Start save position
- End : End save position
- Size : Bytes, Words or Longwords
- Time : Current time (just like in the editor)
-
- - Implanted the save memory in the monitor. First set the START and END
- position (show at the bottom of the screen) and hit Amiga-s
-
- When reqtools library is enabled the normal Write-binary requester is shown
- (including the file exists check).
- When reqtools library is disabled the normal questions will be asked in
- the menu bar...
-
- !! Remember !!
- The end position itself won't be saved.....
- This means when start is set at $40000 and and is set at $40100 there will
- be 256 bytes saved !!! => Position $40100 won't be saved
-
-
- EDITOR
- ------
-
- - At the request of many i (finaly) adjusted the search/replace command.
- When a search-string is not found it will stay at the last found position.
-
- - At the request of some (who use trash'm-one but like the 2.0 look of Asm-One)
- i implanted the free memory in the status bar.
- It will show the availeble memory and the largest block of memory in Kb.
-
- - I implanted the timer in the status bar. Why ??? don't know. just another
- request of a TRASH'M-One user.
-
- - Jump marks saving implanted....
- Look in the preferences menu.
-
- >> Be carefull : TRASH'M-One only saves 9 marks !!
- >> Asm-One saves and loads 10 marks
- >> When a TRASH'M-One source is loaded in Asm-One the first
- >> longword (4 characters) are missing if marks were saved.
- >>
- >> I used the same recognition longword for marks ($FAF9FAF9)
-
-
- - Quick Tof and Bof.
-
- Use CTRL-Arrow_up to jump to top of file
- Use CTRL-Arrow_down to jump to end of file
-
-
- - I implanted the error remember.
- When a source is assembled and the Assembler/Assemble../ALL_Errors is on
- the complete source will be assembled without stopping for any error.
-
- Now when in the editor hit Amiga-e and you will jump to the first error
- which occured after your current line. You will see the error that was
- produced in the menu bar !!
-
- Note : Only the first 100 Errors are remembered.
-
-
- ASSEMBLER
- ---------
-
- - When a '** FILE ERROR' message was displayed it didn't display the whole
- filename. This is corrected now.
-
- - The offset command didn't work correct. Now it does !!!
-
- - implanted the ENDOFF directive. Wasn't even implanted in the original Asm-one
-
- - implanted the REM directive.
-
- This directive starts a **REMark** block. the part following a REM statement
- will be skipped during assembling.
-
- A REMark block is ended with EREM which stands for ENDREM.
-
- - implanted the TEXT directive.
- This will allow you to enter text (like the old dc.b "HAY DUDES")
-
- the TEXT command is ended by ETEXT which stands for ENDTEXT
-
- Whenever a '|' is found in the text it will switch to simulated hex mode !!
- and will subtract $30 from the character's untill another '|' is found
-
- 1 = chr $31 = ascii "1"
- -1 = chr $2F = ascii "/"
-
-
- Example:
- -------------------------------------------------------------< cut here
- DATA: text
- Hay dudes this is a T.F.A. |1| production....
- I love Diny and wanna do dirty things|/|
- etext
- -------------------------------------------------------------< cut here
-
- is the same as:
- -------------------------------------------------------------< cut here
- DATA:
- dc.b "Hay dudes this is a T.F.A. ",1," production...."
- dc.b "I love Diny and wanna do dirty things",-1
- -------------------------------------------------------------< cut here
-
- This way you won't have to TEXT & ETEXT everytime you want a special code
- inside your text for a trigger or command byte.
-
-
- - New commands implanted
-
- INSTRUCTION PROCESSOR
-
- BFCHG 68020 and higher
- BFCLR 68020 and higher
- BFEXTU 68020 and higher
- BFEXTS 68020 and higher
- BFFFO 68020 and higher
- BFINS 68020 and higher
- BFSET 68020 and higher
- BFTST 68020 and higher
- BKPT 68020 and higher
- CALLM 68020 ONLY !!
- CAS 68020 and higher
- CAS2 68020 and higher
- CHK2 68020 and higher
- CMP2 68020 and higher
- DIVS.L 68020 and higher
- DIVSL.L 68020 and higher
- DIVU.L 68020 and higher
- DIVUL.L 68020 and higher
- EXTB.L 68020 and higher
- MOVE to CCR 68010 and higher {*1}
- MOVE from CCR 68010 and higher {*1}
- MOVEC 68010 and higher {*2}
- MOVES 68010 and higher
- MULS.L 68020 and higher
- MULU.L 68020 and higher
- PACK 68020 and higher
- RTD 68010 and higher
- RTM 68020 ONLY !!
- TRAPcc 68020 and higher
- UNPK 68020 and higher
-
-
- {*1} = 'MOVE from SR' and 'MOVE to SR' have become privileged instructions
- as off the 68010 !!!
- Use 'MOVE from CCR' and 'MOVE to CCR' in 68010 or higher modes.
-
- {*2} = MOVEC was implanted as off the 68010.
- These registers may only be spoken to when using a 68010 or higher:
- - SFC (Source Function Code register)
- - DFC (Destination Function Code register)
- - VBR (Vector Base Register)
- - USP (User Stack pointer)
-
- These registers may only be spoken to when using a 68020 or higher:
- - CACR (CAche Control Register)
- - CAAR (CAche Adress Register)
- - MSP (Master Stack Pointer)
- - ISP (Interrupt Stack Pointer)
-
-
- - New adressing modes implanted....
-
- >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
- >> All adressing modes are allowed in source and destionation mode <<
- >> as long as the processor allows it <<
- >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
-
-
- D{number} = Displacement of maximum {number} bits
- Ax = Address register
- Dx = Data register
- Bd = Base displacement
- (when the Bd is defined as a constant the size will
- automaticly be set to Long)
- Od = Outer displacement
- (When the Od is defined as a constant the size will
- automaticly be set to Long)
- Size = size ({W}ord , {L}ongword)
- Scale = Scaling (only 0,2,4 or 8 allowed)
-
-
- (Dx) 68020 and higher
- (Dx.Size) 68020 and higher
- (Dx.Size*Scale) 68020 and higher
- (Dx.Size*Scale,Bd.Size) 68020 and higher
- ([Bd.Size,Dx]) 68020 and higher
- ([Bd.Size,Dx.Size]) 68020 and higher
- ([Bd.Size,Dx.Size*Scale]) 68020 and higher
- D8(PC) 68000 and higher
- D8(PC,Dx) 68000 and higher
- D8(PC,Dx.Size*Scale) 68020 and higher
- (PC,Dx.Size*Scale,BD.Size) 68020 and higher
- D8(Ax,Dx.Size*Scale) 68020 and higher
- (Ax,Bd.Size) 68020 and higher
- (Ax,Dx.Size,BD.Size) 68020 and higher
- (Ax,Dx.Size*Scale,BD.Size) 68020 and higher
- ([Bd.Size,Ax]) 68020 and higher
- ([Bd.Size,Ax],Dx.Size*Scale) 68020 and higher
- ([Bd.Size,Ax,Dx.Size*Scale]) 68020 and higher
- ([Bd.Size,Ax],Dx.Size*Scale,Od.Size) 68020 and higher
- ([Bd.Size,Ax,Dx.Size*Scale],Od.Size) 68020 and higher
- {Dx/D5:Dx/D5} 68020 and higher (Bitfields)
- {(Ax):(Ax)} 68020 and higher (Bitfields)
-
- Just buy a good processor book and find out how they work !!
-
-
- - Warnings on/off implanted.
-
- Look in the Assembler/Assemble.. menu
-
- When a specific or higher proccesor is needed for the command you used
- a warning will be shown (1 maximal per line)
-
- You can turn off the warnings by disableling the Warnings menu item
-
- When you have this item enabled all 68010++ commands/adressing modes will
- show a warning !! even when you have specified a 68040 in your system.
-
- When you have this item enabled the warnings will be remembered in the
- error table so you can use Amiga-e in the editor again to find them.
-
- When you have this item enabled and are disassembling ' ; 680x0 mode' will
- be added to the line.
-
-
- Debugger/Disassembler
- ---------------------
-
- - Added the VBR register on the right side.
-
- - Changed the debugger. It checks the processor used in the system.
- This is needed to check if there has to be a longer stackframe for returning
-
- When a programm is executed or stepped thru Asm-One will clear all cache
- at the beginning of the programm, or at the start of each step procedure !!!
-
- Remeber >> Don't use Self Modifying Code on the 68020/30/40 without
- disableling and clearing INSTRUCTION Cache !!
-
- - All new commands now also disassemble. Due to the fact that 1 commandline
- now can reach up to more than 80 characters sometimes the line is cut off.
-
-
- >>>>>>>In Debug/disassembly mode-Halfscreen (@D)<<<<<<<<<<<
-
- move.l ([$400.w,a0],d1.w*2,$78000.l),([$800.l,a1,d2.l*4],$88220.l)
-
- will be converted to
-
- {adres} 23B01327040000078000>MOVE.L ([$0400,A0],D1.W*2,$00078000.L),([$000>
- ^ ^
- | |
- ----------- Meaning this is not all !! ---------
-
-
- >>>>>>>>In disassembly mode-full screen (D)<<<<<<<<<<
-
- move.l ([$400.w,a0],d1.w*2,$78000.l),([$800.l,a1,d2.l*4],$88220.l)
-
- will be converted to
-
- {adres} 23B01327040000078000>MOVE.L ([$0400,A0],D1.W*2,$0007800>
- ^ ^
- | |
- ---- Meaning this is not all !! -----
-
-
-
- >>>>>>>>When including disassembly (ID)<<<<<<<<
-
- move.l ([$400.w,a0],d1.w*2,$78000.l),([$800.l,a1,d2.l*4],$88220.l)
-
- will be converted to
-
- MOVE.L ([$0400.W,A0],D1.W*2,$00078000.L),([$00000800.L,A1,D2.L*4],$00088220.L)
-
-
-
-
- *********************************************************
- * Update report from ASM-One V1.15 to V1.16 *
- * Release date : 05-04-'93 *
- *********************************************************
-
- My birthday, Anybody wanna send me a gift ???
-
- OVERALL
- -------
-
- - Since the 68020 and higher allow odd word/longword adressing it's implemented
- in Asm-One. You can now use words,longwords at odd adresses.
- You can not use ODD coding in Asm-One !!!
-
-
- COMMAND LINE
- ------------
-
- - Added the indirect memory acces.
- When you use tabels and pointers you allways had to look in the pointer
- and then find out the info about the adress. This can now be done in one
- step. Just add the { between the command and the adress/pointer
-
- Example:
-
- @h{4 will give you the hexdump starting at the ExecBase.
- @h{.l4 will give you the hexdump starting at the ExecBase in longwords
- @h4 will give you the hexdump starting at adress 4
- @h{sinuspos will give you the hexdump starting at the adress that was in
- the pointer: sinuspos.
-
- The same is used for @a,@d,@n,@b.
-
- REMEMBER : if you use .w or .l on a 68000 processor bit 0 of the
- pointer AND value of pointer will be cleared !!
- on a 68010+ system this will not happen.
-
- ASSEMBLER
- ---------
-
- - Go command bugged. The stackframes of the 68000/10/20/30/40 are
- NON compatible, all stackframes are recognized and handled now.
-
- - A 'STUPID' bug was in the 1.3 version. I forgot to check for the OS
- somewhere and that made the Go and Jump command hang when running a
- OS 1.3 Amiga !!!
- (Sorry.......)
-
- - The (pc,dx) / d8(pc,Xn) / (d16,pc,Xn) / ([Bd.s,pc],Xn,Od.s) didn't
- assemble. Now it does.....
-
-
- - When a incdir was set with a assign or device and in the include command
- was a assign or device both names were used. Now the incdir device/assign
- is filtered out when in the include is an assign or device set to !!
-
-
- DEBUGGER
- --------
-
- - Some {2 words} commands did disassemble right but gave a error when you
- executed them in the debugger.. (like MULU.L (a0,d1.w,$400),d0:d2)
- Solved now.
-
-
-
-
- *********************************************************
- * Update report from ASM-One V1.16 to V1.20 *
- * Release date : 19-09-'93 *
- *********************************************************
-
- EDITOR
- ------
-
- - CTRL-up CTRL-down is now selectable.
- Due to the fact that i got very much responseto this function
- i made it selectable.
-
- Quote #1 : "I love you for implanting this"
-
- Quote #2 : "Change this at once!!!"
-
- You'll find it in the environment/editor section of the preferences.
-
-
- - When entering the editor and using AMIGA-E (jump to last error line)
- without assembling a source first the editor could hang or give
- strange message !! solved now.
-
- - When exiting the editor when the mouse button was pressed some
- errors occured.
-
- When entering the editor the Mousepressed flag will always be cleared
- now.
-
- - Mark blocks with mouse implemented.
-
- When pressing the left mouse button on the same place in the
- source twice will start marking the block.
-
- When the block is on and you press the left mouse button on the
- same place twice it will UNmark the block.
-
- - Comment & Uncomment block implemented
-
- You can now quickly comment or uncomment a block.
-
- Comment block will place a ; at the start of each line. Uncomment
- block will delete the first character of each line if that character
- is a ;
-
- Comment & Uncomment block can be found in the editor/block menu.
-
- Shortcuts are : Amiga-; = Comment block
- Amiga-: = Uncomment block
-
-
- - At some places the Source-changed flag will be set.
- Like : Rotate-block.
- Search & Replace.
- Deleting a character with DEL or BACKSPACE will now set the
- SOURCECHANGED flag. (Why didn't it before ???)
-
-
- - Custom tabs implemented
-
- At the request of many user i implemented the custom tabs function.
- It works the same as Trash'm-one.
-
- Just define the tabs at the first line of your source.
-
- 1 2 3 4 5 6 7
- 1234567890123456789012345678901234567890123456789012345678901234567890
- line 1 ;----------T--------T-------------------T---------T
-
- will create tabs on the 12th,21th,41th and 51th column.
-
- When you only specify a part of the line the tabs will continue
- with the standard format.
-
- When no tab-define line is found at the top of the source the standard
- tabs will be used.
-
- When changing the tab-definition line the source will be adjusted
- accordingly.
-
-
- MONITOR
- -------
-
- - The Quickjump command didn't work. This was caused by the (hidden)
- fast-exit command (never documented, it was AMIGA-q).
- fixed now.
-
-
- OVERALL
- -------
-
- - The new REGSDATA now contains ALL aga information available.
- (Got this stuff from commodore itself hehehehehe... Not the
- 'missing page 19/last page' textfile.)
- P.S. The amigaguide file is also present on the disks.
-
- - When the V (Change dir) command was issued at the command line with
- a file instead of a directory the file would be locked and never
- released again.
- Now it is not possible to change your directory to a file !!
-
- - When the =R command was issued and it was broken off by a CTRL-C
- and the Resident-regsdata wasn't on the space allocated for the
- regsdata file wasn't freed. Not it is !!
- Since the Regsdata's size is now over 100Kb (Including all
- ECS/AGA information) it's better to make it NON-resident. Unless
- you've got lot's a memory to spare....
-
- - Added the Assembled/Run/New flag in the status bar. (Like in Trashm)
-
- - = New.
- a = Assembled and run.
- A = Assembled not run yet.
-
- - You can now specify a own .pref file when starting Asm-One from
- the CLI.
-
- Asm-One_V1.20 -sources:megademo/megademo.pref \f\300\r demo.asm\
-
- Will first load the sources:megademo/megademo.pref as a preference
- file. After that the usual command line will be continued.
-
- This way you can pre-specify the preference file you want for each
- time you start Asm-one.
-
-
- - Enable/Permit upon reentry of Asm-One
-
- Some users reported a 'bug' how Asm-One hung upon reentering the
- editor and clicking the mosue somewhere in the source code after
- a faulty programm which used a Disabled/Forbid exec library call.
-
- Since this is NOT a bug in Asm-One i implanted a feature which
- allows you to execute the ENABLE/PERMIT exec library calls directly
- upon reentering Asm-One. This can be switched on/off in the
- Environment/Monitor-debugger preferences (Amiga-[)
-
-
- - Direct FPU calculation command implanted.
- This command work almost the same as the normal calculate command (?)
-
- Use the [ to calculate floating point numbers !
-
- You will get the decimal AND the hexidecimal representation of the
- calculation.
-
- You can specify the size : .S .D .X .P
- This will have no effect on the calculation but will effect the
- hexidecimal output of the number. Extended precision (.X) is default
-
-
- Example:
-
- >[.s383.3827*56.54{enter}
- 2.16764579 E 4 $4D4EB90A.S
- >
-
- >[.x383.3827*56.54{enter}
- 2.16764579 E 4 $401A0000CEB90A2947AE2000.X
- >
-
- >[2/3{enter}
- 6.66666666»E-1 $401C00009EF21AAAAAAAAAAA.X
- |
- +- This means the number continues untill infinity.
-
- >[2/3{enter}
- 6.66666667±E-1 $401C00009EF21AAAAAAAA000.X
- |
- +- This means the number is inexact.
-
- The inexact and infinity flags only work in the commandline version !!
- Since during debugging Asm-One can not recognize which FPU register
- caused the inexact/infinity flag it will ignore them !!!
-
-
- - When a programm was terminated with an exeption or trap the cursor
- of Asm-One was fucked up. Fixed now..
-
- - P command fixed.
- Didn't work at all... Guess almost nobody uses it because i only
- received 1 bug-report about it.
-
- - When starting Asm-One kickstart 2.0/3.0 version running a
- kickstart 1.2/1.3 system, you would see the message
- 'This version of Asm-One requires kickstart 2.04 or higher'
- and immediatly giving an guru after that. Solved now
-
- - Since V1.15 (only in the 2.0/3.0 version) all commands entered at the
- CLI where not recognized. So ASM-ONE_V1.15 \f\100\v tools\r my_prog.s\
- didn't work anymore... fixed now..
-
- - =S{characters} changed. (show symbols)
-
- Now you can specify the first, or the first two characters.
- When characters are specified the symbols table will be shown as off
- the entered characters.
-
- =Sex Will start the symbols table at ex.....
-
- =Se Will start the symbols table at e......
-
- NOTE : When you have UCase=LCase on the characters you enter will
- be converted to UCase (since all the symbols will be!!)
-
- When you have UCase=LCase off it is important that you
- specify upper and lowercase characters.
-
-
- - Added the =A feature. This command will display all Asm-One Sections
- This enables you to look were Asm-One is located in memory (5 blocks)
-
- - When writing an Object,Linkfile or Binary the filename in the requester
- will be the source filename without the .xxx extension. Everything
- from the . character will be removed from the name.
-
- - When zapping your source your incdir will be cleared now too.
-
- - Preferences split up to 2 windows:
-
- 1.) Assembler preferences (Start with Amiga-[ )
- 2.) Environment preferences (Start with Amiga-] )
-
- Which can be found in the Assembler menu.
-
- All according to the commodore standards.
-
- Menu's are available when the preferences are active.
-
- You can now :
- - Save
- - Save as
- - Load
- - Return to default
- - Cancel
- - Use without saving (Same as close window in previous version)
-
- At bootup Asm-One will use ASM-ONE.PREF
-
- When loading a preference file Asm-One DOES NOT check the file !!!
- So make sure it's a .PREF file ! --------
-
- I don't know what will hapen if the file you load isn't a Asm-One
- .pref file. Especialy when + and - characters are present in that file
-
- The boot command from the prefs file can be edited in the ENVIRONMENT
- preference window and will be saved now..
-
- - Screen is now opened in Kickstart 3.0 mode. (when available)
-
- - All menu's are created using gadtools.library !!
-
- Only menu's that are usefull at that time will be shown, this will
- create a more efficient way of using menu's
-
- All menu's are rendered in Kickstart 3.0 mode. (when available)
-
-
- ASSEMBLER
- ---------
-
- - DIVS.L,DIVU.L,MULS.L and MULU.L didn't show a warning if the
- processor was lower then a 68020 in the preference file. Now
- they do.
-
- - At request of some {ex} Trashm'one users i implanted the
- addwatch command in source. it works exactly the same as Trashm'one !
-
- - DS Clearing ON/OFF implemented.
- After some letters i decided to implement this. It can be found in
- the Assembler preference window.
-
- - In some rare cases it was possible that Asm-One crashed when trying to
- display the percentage counter. Solved now...
-
- - MOVES didn't assemble right. Now it does..
-
- - MULU.L,MULS.L,DIVS.L,DIVSL.L,DIVU.L & DIVUL.L #xxxxxxxx,Dx:Dx didn't
- assemble right. They took the immediate data as a word. But it should
- have been a Longword.. This is corrected now.
-
- - CAS2 didn't assemble right !! now it does.
-
- - Link.l wasn't implanted. now it is...
-
- - Some PC relative adressingmodes gave a 'Relative mode error' when they
- shouldn't ! solved now.
-
- - When a error is encountered in a include file both the current source
- file line and the line inside the include file will be shown. This way
- it's easyer to locate the problem.
-
- - Some include file provided by Commodore ended with the ENDC !{incfile}
- This produced an error in Asm-One. This is now allowed !!
- (Since Commodore won't change their mistaches we have to work around it)
-
- - New data definition implanted
-
- NOTE: all FPU commands can be assembled without having a FPU, these
- data definitions NEED a FPU to assemble !!
-
-
- Directive Name Bits How
-
- DC.S Single precision 32 31 = Sign of fraction
- 30-23 = Exponent (8bits)
- 22- 0 = Fraction (23bits)
-
- DC.D Double precision 64 63 = Sign of fraction
- 62-52 = Exponent (11bits)
- 51- 0 = Fraction (52bits)
-
- DC.X Extended precision 80(96) 95 = Sign of mantissa
- 94-80 = Exponent (15bits)
- 63- 0 = Mantissa
-
- DC.P Packed decimal string 96 95 = Sign of Mantissa
- 94 = Sign of Exponent
- 93-92 = Invinity or NAN bits
- 91-79 = Exponent (12bits)
- 79-76 = +999 Exponent digit
- 75-68 = ALLWAYS ZERO !!
- 67- 0 = Mantissa (68bits)
-
- All the above forms can be used in BCD.x,BLK.x and DS.x directives
-
- All numeric expresions for these new data definitions are DECIMAL and
- HEXADECIMAL only !!!
-
- In hexadecimal mode you must provide all numbers for the float.
-
- Packed = 24 chars.
- Extended = 24 chars.
- Double = 16 chars.
- Single = 8 chars.
- Long = 8 chars.
- Word = 4 chars.
- Byte = 2 chars.
-
- The following mathematic expressions can be used for these data defenitions:
-
- Directive Name Example Result
-
- * Multiply dc.s 500.5*2.45 1226.225
- + Add dc.d 500.5+2.1 502.6
- - Subtrackt dc.x 500.5-2.1 498.4
- / Divide dc.p 500.5/2.65 188.8679245
- ^ Power dc.s 500.5^2 250500.25
-
- - new registers implanted
-
- Assembler name Official name
-
- FP0 data register 0
- FP1 data register 1
- FP2 data register 2
- FP3 data register 3
- FP4 data register 4
- FP5 data register 5
- FP6 data register 6
- FP7 data register 7
- FPCR Mode Control Byte
- FPSR Status register
- FPIAR Instruction Adress Register
-
- - new MOVEC registers implanted for the 68040
-
- TC
- ITT0
- ITT1
- DTT0
- DTT1
- MMUSR
- URP
- SRP
-
- - new MOVEC registers implanted for the 680ec40
-
- IACR0
- IACR1
- DACR0
- DACR1
-
-
- - new commands implanted
-
- INSTRUCTION (CO)PROCESSOR
-
- MOVE16 68040 only
-
- FABS 68881/68882/68040
- FACOS 68881/68882/68040
- FADD 68881/68882/68040
- FASIN 68881/68882/68040
- FATAN 68881/68882/68040
- FATANH 68881/68882/68040
- FBcc 68881/68882/68040
- FCMP 68881/68882/68040
- FCOS 68881/68882/68040
- FCOSH 68881/68882/68040
- FDBcc 68881/68882/68040
- FDIV 68881/68882/68040
- FETOX 68881/68882/68040
- FETOXM1 68881/68882/68040
- FGETEXP 68881/68882/68040
- FGETMAN 68881/68882/68040
- FINT 68881/68882/68040
- FINTRZ 68881/68882/68040
- FLOG10 68881/68882/68040
- FLOG2 68881/68882/68040
- FLOGN 68881/68882/68040
- FLOGNP1 68881/68882/68040
- FMOD 68881/68882/68040
- FMOVE (control register) 68881/68882/68040
- FMOVE (data register) 68881/68882/68040
- FMOVECR 68881/68882/68040
- FMOVEM (control reg list) 68881/68882/68040
- FMOVEM (data reg list) 68881/68882/68040
- FMUL 68881/68882/68040
- FNEG 68881/68882/68040
- FNOP 68881/68882/68040
- FREM 68881/68882/68040
- FRESTORE 68881/68882/68040
- FSAVE 68881/68882/68040
- FSCALE 68881/68882/68040
- FScc 68881/68882/68040
- FSGLDIV 68881/68882/68040
- FSGLMUL 68881/68882/68040
- FSIN 68881/68882/68040
- FSINCOS 68881/68882/68040
- FSINH 68881/68882/68040
- FSQRT 68881/68882/68040
- FSUB 68881/68882/68040
- FTAN 68881/68882/68040
- FTANH 68881/68882/68040
- FTENTOX 68881/68882/68040
- FTRAPcc 68881/68882/68040
- FTST 68881/68882/68040
- FTWOTOX 68881/68882/68040
-
-
- - New Syntax adressing modes
-
- label(pc) can now be written as (label,PC)
- label(pc,dn) can now be written as (label,PC,dn)
-
- label{-label}(an) can now be written as (label{-label},An)
- label{-label}(an,dn) can now be written as (label{-label},An,dn)
-
-
- - High coding commands !!
-
- Since sometime i've looked at diferent assemblers and MOST of them
- gave a relative mode error when trying to assembly the following line:
-
- MOVE.L $7F(PC),d0
-
- This is theoreticly possible since the following piece of coding will
- produce the same line
-
- MOVE.L b(pc),d0
- dcb.b $7d,0
- b:
-
- this last piece of coding will disassemble as
-
- MOVE.L $.......(PC),D0
-
- so, after evaluating the different modes i discovered that BOTH lines
- are identical !!!, the first line (move.l $7f(pc),d0)) is just a
- High coding command ! no use of labels! just put the value (which
- would otherwise be converted from a label) in the command.
-
- Asm-One will allow this way of coding !! it's just not as easy as
- using a label to do exactly the same !!!!
-
- The same is for ($xxxx,PC) / (PC,Dx,$XXXXXXXXX)
-
-
- DEBUGGER
- --------
-
- - On 68010++ systems the VBR was shown in the debugger.. I don't know
- if any of you noticed it but the first character of the line beneath
- the VBR line was missing !!! solved now
-
-
- - FPU registers during source level debugging.
- Now you can switch the Dx registers and FPx registers while in the
- source level debugger. This will enable you to watch what you are
- doing with your FPU.
-
- This is only available when you have an FPU !!!
-
- Switch between the Dx and FPx with Amiga-Shift-c or select
- CHANGE Dx/FPx in the debugger menu.
- (When no FPU is found this menuitem will be disabled)
-
-
- DISASSEMBLY
- -----------
-
- - The bitfield commands didn't disassemble right. Every time when a
- imediate number was used the $ was forgotten.
-
- - The CHK2.B command didn't disassemble. Solved now.
-
- - All fpu commands should disassemble.
-
- - MOVE16 (68040 only) now disassembles.
-
-
-
- COMMAND LINE
- ------------
-
- - X (show registers) command extended
-
- !! This also applies to the end of a program or a breakpoint reached !!
-
- If you have 'FPU present' ON in the assembler preferences AND you have
- a FPU or integrated FPU in your CPU all FPU information will be shown.
-
- Example :
- 1.) D0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
- 2.) A0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 004DA694
- 3.) SSP=004DB694 USP=004DA694 SR=0004 -- -- PL=0 --Z-- PC=004EAE7E VBR=005C5056
- 4.) FPCR= 0000 BSUN=0 SNAN=0 OPERR=0 OVFL=0 UNFL=0 DZ=0 INEX2=0 INEX1=0
- 5.) FPSR= 00000000 BSUN=0 SNAN=0 OPERR=0 OVFL=0 UNFL=0 DZ=0 INEX2=0 INEX1=0
- 6.) N=0 Z=0 I=0 NAN=0 S=0 QU=00 IOP=0 OVFL=0 UNFL=0 DZ=0 INEX=0
- 7.) FPIAR=00000000 PRECISION=X ROUNDING=RN
- 8.) FP0: 0.00000000 E 0 0.00000000 E 0 0.00000000 E 0 0.00000000 E 0
- 9.) FP4: 0.00000000 E 0 0.00000000 E 0 0.00000000 E 0 0.00000000 E 0
- 10.) PC=004EAE7E 4E75 RTS
-
-
- Line 1,2,3 and 10 should be familiar.
-
- Line 4 shows the FPCR
- Line 5 shows the FPSR
- Line 7 shows the FPIAR
- Line 8 shows the FP0 till FP3
- Line 9 shows the FP4 till FP7
-
- Explanation of abreviations:
-
- ; Part of
- BSUN = Branch/Set on UNordered ; \
- SNAN = Signaling Not-A-Number ; \
- OPERR = OPerand ERRor ; \
- OVFL = OVerFLow ; \ Mode Control Register
- UNFL = UNderFLow ; /
- DZ = Divide by Zero ; /
- INEX2 = INEXact operation ; /
- INEX1 = INEXact decimal input ; /
-
- ; Part of
- N = Negative ; \
- Z = Zero ; \ Condition Code Byte
- I = Infinity ; /
- NAN = Not-A-Number or Unordered ; /
-
- ; Part of
- S = Sign of Quotient ; \ Quotient byte
- QU = 7 least significant bits of quotient ; /
-
- ; Part of
- IOP = Invalid operation ; \ Accrued exeption byte
- INEX = inexact ; /
-
-
- Precision abreviations:
-
- S = Single
- D = Double
- X = Extended
- U = Undefined
-
- Rounding abreviations:
-
- RN = To nearest
- RZ = To Zero
- RM = To minus infinity
- RP = To plus infinity
-
-
-
- *********************************************************
- * Update report from ASM-One V1.20 to V1.25 *
- * Release date : 07-04-'93 *
- *********************************************************
-
- » Trash'm-One V2.0 came out !!
- »
- » 'Totally ReWritten code'
- »
- » Well Rune, Look's like you gave the source to Deftronic. Why ???
- » Just because he's an old friend of yours or to put T.F.A's Asm-One down ??
- »
- » (I hope it's the first option)
- »
- » Anyway, We'll see what the future will bring us. My guess is that Trash'm-One
- » will lead it's own live as like Asm-One.
- »
- » Just a fast reminder: Deftronic told everybody the first Trash'm-One was
- » a re-write/add-write of Asm-One V1.02. To bad he forgot?
- » to mention some parts (Create sinus,Create dir and more)
- » where taken from Asm-One V1.05 (or so) by T.F.A.
- » (And that's a fact because i checked the code !)
- »
- » I'll will continue my work with the Asm-One we have and hope that both version
- » will suit the needs of the many.
- »
- » Deftronic : Succes with the source. But keep playing fair. It's not how big
- » your name in the scene is but HOW YOU GOT IT !!!!
- »
- » PS: Get the exit command (!) to work with the latest reqtools !!!
- » Get the R {filename} implanted again
- » Get the Zap Source (zs) to work with the latest reqtools
- » Did you test this version on MC68020++ systems ?????
- » The =l command doesn't work (maybe a 68020++ problem ???)
- » I liked your solution to the preference window !! looks very nice
- » The Write Link file (WL) doesn't bug like you said. The problem is
- » in the section statement (hint)
- »
- » Come on man !! how old are you ????? are you realy putting this shit in
- » a great assembler ?????
- »;----------------------------------------------------------------------------
- Deftronictext: dc.b 'Deftronic was the coder of this FANTASTIC Assembler!',$A,0
- dontmentiontext:dc.b "DON'T MENTION THAT NAME!!!",$A,0
- tfanothintext: dc.b "YES! T.F.A. has nothing to do with TRASH'M-One..',$A,0
- promaxtext: dc.b 'PROMAX was the creator of ASM-One..',$A
- dc.b 'I got the source from him not from RESOURCE!'
- dc.b '!',$A,0
- »;----------------------------------------------------------------------------
- » Straight from your Trash'm-One V2.0 !!! (yes resourced)
- »
- » 'Deftronic was the coder' <---- Nope.... Rune was,is and allways will be
- » 'not from RESOURCE!' <---- mmmhh... May i remind you of all the
- » previous versions of Trash'm-One
- » Did you get the source then ?????
- »
- » Why , o , why do you have to pretend you coded the shit? The things you've
- » added to Trash'm-One are cool enough so why brag about stuff you didn't do?
- »
- » Why implement Weird texts to bring Asm-One down ? can't stand the competition?
- »
- »
- » Friendship Rulez
- »
- » Signed : Price / T.F.A.
-
-
- ********************************************************************************
- * *
- * Now for the changes & add-ons of Asm-One V1.25 *
- * *
- ********************************************************************************
-
-
- OVERALL
- -------
-
- - When you returned in Asm-One with an error (Like division by zero) on
- aga machine's the screen could go blank. This was caused by, Not
- loading the oldview back. This is now solved.
-
- - The AGA.GUIDE can now be called from Asm-One within :
- . The Editor
- . The Commandline
- . The Monitor (All functions)
-
- Use Amiga-= or the menu function.
-
- The AGA.GUIDE must be placed in the S: directory !!
-
-
- - !!
- Quick exit, This will allow including Asm-One in a script file.
-
- eg.
-
- Asm-One -dh0:s/linker.pref \p\300\v eautils\r bull.asm\a\wl ram:tt\!!\
-
- This will start Asm-One, Using the dh0:s/linker.pref as preference file
- allocating 300Kb public memory, Jump to the EAutils directory
- read the bull.asm source,assemble it, write it to Ram:tt as linkfile
- and exit Asm-One.
-
- P.S. There could come requesters at some points. But Reqtools will
- automaticly put the Asm-One screen in front of any others before
- executing the requester.
-
- - Oeps, forgot to (or removed) some TAG_DONE's and that caused
- Reqtools V38.1092 to crash the system. Solved now anyway.....
-
-
- EDITOR
- ------
-
- - Now the editor can scroll right and left (FiNaLy!!!!)
-
- Special thanx must go to BlackHawk/Paradox for giving me a part of
- his own adjusted source. ! Friendship Rulez !
-
- - KEEP X
-
- You can specify if you want to select this function in the
- environment/preferences. If you activate this function Asm-One will
- always try to reach the old X position of the cursor when you move
- to the next/previous line or jump pages. The X position will be
- remembered when moving a character to the left,right,eol,bol,search&replace
- or using the mouse.
-
- Jumping to tof or bof will set the x-remember to colomn 1.
-
- (Exiting and reentering the editor will NOT clear the x-remember)
-
-
- - MULTIPLE SOURCES
-
- Finaly implanted this function. After a lot of messages from users
- and some heavy consideration i implanted this function. All sources
- are kept in memory. NO FILE'S ARE SAVED while in Asm-One. This is
- somehow different than TRASH'M-One, which saves the file's and info
- to RAM:.
-
- Advantages : No memory will keep being occupied after exiting Asm-One.
- Fast changing between sources.
- (+- 1 second for a 500Kb source on a MC68000)
-
- Disadvantages: Memory fragmentation can occur when you switch much and
- keep changing the size of the sources.
-
- These points will be saved in memory when switching between sources :
-
- 1.) Source
- 2.) Filename
- 3.) Update place
- 4.) all 10 Marks
- 5.) Flags
- 6.) Copy buffer
- 7.) Includes kept per source
-
- Now you can switch between 10 source with the F1 - F10 keys.
-
- While switching between the 10 sources the copybuffer will be held so
- you can copy parts from source to source.
-
- When exiting Asm-One all sources will be checked. When a source is
- still in memory and not saved you will be warned.
- The warning only applys to the first -NOT SAVED- source. If there
- are multiple sources which are not saved yet you will get a message
- everytime you try to exit Asm-One
-
- If you use the (new) Quick-Exit function of Asm-One no source will be
- checked and all changes done will be lost !!!! All occupied memory
- will be freed offcause.
-
- - UnComment debugged
-
- Sometimes when uncommenting a block 1 ; would remain in the source.
-
-
- ASSEMBLER
- ---------
-
- - Includes are now case sensitive stored if the UCase=LCase function
- is off. This way you can use Asm-One in networks which require that
- the filenames are given in correct case.
- (Hay Rhino, nice option he ???)
-
- - movem.l {label}(pc),{reglist} gave a relative mode error..
- Solved now.
-
- - movem.l {reglist},(pc,.....) didn't give an error when it should !!
- no PC relative moves are allowed in RL->MEM movem opcodes.
-
- - Nasty bug removed !
-
- When you specify an offset with 'dc.w <label>-<label>' it was possible
- that the offset would become lower than -32767. An error should be
- created since this is an Negative Overflow. Asm-One didn't produce
- and error (long time to find this boogie!!)
-
- Now it will generate an error when passing the -32767 line.
-
- NOTE : Only when the word is negative !
-
- - Bra.L implanted
- Bcc.L implanted.
-
- These functions are for the 68020++ ONLY !!
-
- Asm-One disassembles these opcode on any processor, but assembles
- according to the selected processor in the preferences.
-
- 68020++ selected : Bra.L nextpart
- Will assemble as : 60FF00000016 BRA.L $002F3150
-
- 68000/10 selected : Bra.L nextpart (L interpreted as W !)
- Will assemble as : 60000016 BRA.W $002F3150
-
-
- So when you are using this new .L branches be sure to define for
- which processor the programm is made !!
-
-
- - JUMPERR (re)implemented
-
- Donno what happend but this funtion was allready implemented. Anyway
- it works again now.
-
- Jumperr will allow you to run a own error check routine.
- e.g.
-
- JUMPERR status
-
- start: moveq #0,d0
- moveq #0,d1
- divu d0,d1 ; Will generate a 'division by zero'
- ; exception !!
- moveq #0,d0 ; he will never reach this
- rts ; part of coding.
-
- status: movem.l d0-a7,regs
- ....
- ....
- ....
- movem.l regs,d0-a7
- rts
-
- regs: blk.l 2*8,0
-
- This status function will save your registers, do some shit and
- return to Asm-One.
-
-
- - new opcodes implemented:
-
- CINVa ; *1
- CINVp ; *1
- CINVl ; *1
- CPUSHa ; *1
- CPUSHp ; *1
- CPUSHl ; *1
- PBcc ; *2
- PDBcc ; *2
- PFLUSH ; *2
- PFLUSHA ; *2
- PFLUSHAN ; *2
- PFLUSHN ; *2
- PFLUSHS ; *2
- PFLUSHR ; *2
- PLOADR ; *2
- PLOADW ; *2
- PMOVE.b ; *2
- PMOVE.w ; *2
- PMOVE.l ; *2
- PMOVE.d/q ; *2
- PMOVEFD.b ; *2
- PMOVEFD.w ; *2
- PMOVEFD.l ; *2
- PMOVEFD.d/q ; *2
- PRESTORE ; *2
- PSAVE ; *2
- PScc ; *2
- PTESTR ; *2
- PTESTW ; *2
- PTRAPcc ; *2
- PTRAPcc.w ; *2
- PTRAPcc.L ; *2
- PVALID ; *2
-
-
- *1 = cache modes are : BC ; Instruction & Data cache
- IC ; Instruction cache only
- DC ; Data cache only
-
- *2 = See Registers added
-
- - Global access to local labels implemented (Like in Trash'm-One)
-
- local labels can now be accessed everywhere in your source.
- (why use locals if you need them in your complete source???)
-
- e.g.
-
- start: move.w loop1\.loop,d7
- lea datablk\.data_1(pc),a0
- loop1: bsr.s startit
- .loop: bsr.s doit
- dbf d7,.loop
- moveq #0,d0
- rts
- datablk:dc.w 100
- .data_1:dc.w 179
-
- startit:fmove.x #27663.2722,fp1
- rts
- doit: fmul.x #3.3,fp1
- rts
-
-
- For the ones who don't know Trash'm-One :
-
- - Local labels allways start with a . (point)
- - Local labels can normaly only be accessed in the area between 2
- global labels.
- - Local labels can now be accessed everywhere in your programm
- by adding the start_global_area_label and the '\'.
-
- In the example above :
- .loop is a local label in the loop1: till datablk: area
- .data_1 is a local label in the datablk: till startit: area
-
- to access .loop outside it's own area use loop1\.loop
- to access .data_1 outside it's own area use datablk\.data_1
-
-
- - Progress Line indicator implanted
-
- This is usefull when assembling big sources. With this you can
- break the assembling and see the line which was currently being
- assembled (Approx ! it uses 256 line steps)
-
- Sometimes using the right code/data in the right place can save
- a lot of time. eg
-
- LABELA: DC.L LABELC-LABELA
- LABELB: DC.L LABELC-*
- LABELC:
-
- will cost much more time to assemble while
-
- DR.L LABELC
- DR.L LABELC
- LABELC:
-
- Creates the identical code but assembles much faster.
-
-
- DISASSEMBLER/DEBUGGER
- ---------------------
-
- - 68040 Datacache/CopyBack & Rescue combination did not work and
- crached the computer (Pretty hard!!). Now it works again.
- (Thanx Schwarzenegger, Couldn't have done it without you lending
- me your A4000/40 !!)
-
- - MMU opcodes/adressingmodes disassembly implemented.
-
- NOTE: some opcode's are a little different on the MC68851 compared
- to the MC680x0. so NEVER jump to conclusions.
- Check for which processor it's written !!
-
- NOTE#2: for the 68851 the PSR and PCSR are used. For other MC680x0
- it's called MMUSR.
-
- MC68851
- -------
- PBcc.<W/L> ; Branch on PMMU condition
- PDBcc ; Test, decrement, and Branch on MMU condition
- PScc ; Set on MMU condition
- PFLUSHA ; Flush entries in ATC - all
- PFLUSH ; Flush entries in ATC - by code only
- PFLUSHS ; Flush entries in ATC - by code incl shared
- PFLUSH ; Flush entries in ATC - by code & ea
- PFLUSHS ; Flush entries in ATC - by code & ea incl shared
- PFLUSHR ; Invalidate ATC and RPT entries
- PLOADR ; Load an entry into ATC (read mode)
- PLOADW ; Load an entry into ATC (write mode)
- PRESTORE ; Restore function
- PSAVE ; Save function
- PTESTR ; Test logical addres (read mode)
- PTESTW ; Test logical addres (write mode)
- PTRAPcc.<W/L> ; Trap on MMU condition
- PVALID ; Validate a pointer
- PMOVE ; pmove to/from PMMU reg
-
-
- MC68030
- -------
- PFLUSHA ; Flush entry in ATC - all
- PFLUSH ; Flush entry in ATC - by code only
- PFLUSH ; Flush entry in ATC - by code & ea
- PLOADR ; Load an entry into ATC (read mode)
- PLOADW ; Load an entry into ATC (write mode)
- PTESTR ; Test logical addres (read mode)
- PTESTW ; Test logical addres (write mode)
- PVALID ; Validate a pointer
- PMOVE ; pmove to/from MMU registers
-
- MC68EC030
- ---------
- PTESTR ; Test a logical address (read mode)
- PTESTW ; Test a logical address (write mode)
- PMOVE ; pmove to/from MMU register
-
-
- MC68040 / MC68LC040 / MC68EC040
- -------------------------------
- PFLUSH ; Flush ATC entries - page entry
- PFLUSHN ; Flush ATC entries - page entry not global
- PFLUSHAN ; Flush ATC entries - all execpt global
- PFLUSHA ; Flush ATC entries - all entries
-
-
- - New MMU registers implemented
-
- TC
- TT0
- TT1
- AC0
- AC1
- CRP
- DRP
- SRP
- SCC
- PSR
- PCR
- MMUSR
- ACUSR
- VAL
- CAL
- AC
- BAD0 - BAD9
- BAC0 - BAC9
-
-
- - On KS 2.0 68010 or lower processors the debugger didn't work anymore
- (How many of you use it ??? not enough i guess cause i didn't get
- much response to this bug. GET WISE !! USE IT !!)
-
- Solved now anyway...
-
- - You can now specify if you want library calls in hexidecimal or decimal
- offsets. (In the main preference window)
-
- VB: Dos.Library call Open is -30(A6) decimal
- or -$1E(A6) hexadecimal.
-
- - AD {Label/address} implanted
-
- You can now specify the label/address where the debugger will start
- with debugging.
-
- e.g. ADfint (try using this with the Asm_allmodes.asm)
-
-
- - Step command fixed on systems using FPU.
-
- When a FPU was present in the system the 'Step n' command didn't work
- correct. This is solved now.
-
- - Run untill here implanted (Amiga-u)
-
- This function is usefull when you are testing a 'looped' routine.
- Press Amiga-U and the programm will start running untill it reaches
- the same PC as where you are currently standing on or EOP is reached.
-
-
- - Animate (Amiga-i) implanted
-
- This function will allow you to watch the programm run step by step.
- It will continue through the programm untill you press any key or
- EOP is reached.
-
- Animate will enter JSR & BSR's but will check if the JSR is a library
- call. It will determine this with checking if the opcode is a
- JSR -...(A6). If this is so it will execute but not enter (step down)
- the routine.
-
- Remeber : When you see the line you are on; the command is
- allready executed. So when you press a key, you will
- stop at after 2 lines where you are at that moment.
-
-
- - Skip instruction (Amiga-k) implanted
-
- This function will allow you to skip one instruction and continue
- the program flow.
-
-
-
- COMMAND LINE
- ------------
-
- - When register D0 or A0 was changes with the xd0 / xa0 command it was
- done correct. As soon as you entered the debugger (started the
- programm) D0 and A0 where set to the parameters or cleared. This is
- solved now.
-
- - When specifying a size (.b/.w/.l) after a command (like edit-memory)
- the size wasn't kept. Now it is !
-
- - On a A4000 with Copyback Mode on the Read-Object (RO) didn't work
- correct. It now does !!
-
- - Extend Labels enhanced.
-
- Now you can Extend Labels with a Prefix or Postfix.
-
- After the normal 'Extend labels with' question you will be asked
- if you want to PREFIX this extension. If you answer 'Y' all labels
- will be prefixed with the given extension. Any other answer will
- be read as Postfix.
-
- NOTE : This is a very slow procedure !! i can take up some time
- so be patient.
-
- - Directory command debugged (V)
-
- When an illegal path was specified it would tell the user so. But
- when, after that, a V command was issued Asm-One came with a
- memory directory. Not it won't anymore; instead it will show an
- error text : '** No valid memory directory present'
-
- - Bootblock simulator. (BS)
-
- For testing bootblocks. Just code your bootblock and start it with
- BS. The beginning address which is asked is the start of the CODE !!
- e.g.
-
- Boot: DC.B "DOS",0
- dc.l 0 ; for checksum
- dc.l 880 ; root block
- Bootstart: move.l ...
- lea ...
- ... ...
- rts
-
- Would be assembled and started at Bootstart: (so not Boot: !!)
-
-
- - The Power function of the Floating point calculator was incorrect..
- Fixed now..
-
- - The directory you viewed wasn't kept in memory anymore. Now it is again.
-
- - When an illegal path name was given it was possible that Asm-One
- gave some weird free/used space values. solved.
-
- - Pressing ESC on the Command-Line/Window-bar will not longer work as
- an enter but clear the entire Command-Line/Menubar.
-
- Pressing ESC when the command line is empty will jump into the editor
- Pressing ESC when the command line is filled will clear the command line
-
- - Activate Source (AS.) implanted
-
- This function will allow you to switch between sources from the
- command line.
-
- NOTE : This function is only possible when you have been in
- the editor at least once !!!!!!
-
- Just enter the source number you wish to activate right after the AS.
-
- eg: AS4{enter} will activate source nr 4
- AS0{enter} will activate source nr 0
-
- Legal numbers are : 0 - 9.
-
- When an illegal number is given Asm-One will give an error message
-
-
-
- ###############################################################################
- # THANX MUST GO TO % THANX MUST GO TO % THANX MUST GO TO % THANX MUST GO TO #
- ###############################################################################
-
- Name Group For what Version
- ----------------------- ----------------------- ----------------------- -------
- Nic End of century 1999 Bug report 1.05/1.09
- Madison T.R.S.I Idea's 1.05
- Dark helmet Spaceballs Bug report 1.05
- R.E.M. L.D.S. Bug report / Idea's 1.06
- Fulcrum From beyond Bug report 1.06
- Maniac Catastrophy Bug report / Idea's 1.06
- ?????????? The lost boys Bug report 1.07a
- Boushh T.F.A. {since 09-'92} Bug report / Idea's 1.07b
- Inkey T.F.A. {since 09-'92} Idea's 1.07b
- Crew one ????? Bug report 1.08a
- Dragzter ????? Bug report / Idea's 1.08ab
- CFI Size Bug report / Idea's 1.08b
- Flake D-TECT Bug report / Idea's 1.08b/1.09
- Remote-control {off. commodore dvpl} Help with 2.0/Reqtools 1.08b
- Remote-control {off. commodore dvpl} 680x0 books/info 1.09
- Deftronic Crionics Coding/Stealing?? 1.06 !!
- - GALAXY - ????? Cursing/ Idea's 1.09
- Schwarzenegger R.A.F. Help with 3.0/Idea's 1.09
- PBA independant Support/Idea's 1.07 !!
- SMF independant Support/Idea's 1.07 !!
- Spike X-Ray Bug report / Idea's 1.09
- Coders of Italian Bad Boys Bug report / Idea's 1.09
- Team HOI Team HOI Bug report / Idea's 1.15
- Remco Océ Graphics France Bug report / Idea's 1.15
- Leviticus independant ?? Bug report / Idea's 1.15
- Vector Zite-productions Bug report 1.15
- Michel Oradion Bug report / Idea's 1.15
- Dope White label Bug report 1.15
- Zest Triangle Bug report / Idea's 1.16
- Quazar Cyanide Bug report / Idea's 1.16
- Xave Oxygen Bug report / Idea's 1.16
- (Cool letter, You made me jalours with the postcard !!)
- Splash Steelens Letter ????
- Rhino Team HOI help with FPU routines 1.20
- Roger Independant Bug report / Idea's 1.16
- Tizzy DualCrew-Shining Bug report / Idea's 1.16
- Maniac Oradion Bug report 1.16
- Cortex TRSI Nice chat somewere in holland
- Vector Vision Bug report 1.16
- T.I.B. Genetic {Now T.F.A.!!} Bug report 1.16
- »»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»
- All people at 'THE PARTY III' who asked me,told me,begged me,hit me,tried to
- kill me, fried me, loved me (not many!!), kicked me about Asm-One....
- »»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»
- Dr. Jones Zenith Bug report / Sources 1.20
- Jesper Skov Triangle Bug report / Idea's 1.20
- Raw Style Jetset / Skid Row Bug report 1.16
- Crazy Crack Complex Bug report / Idea's 1.20
- Crayon Noxious Bug report / Idea's 1.20
- President Screw Spaceballs Bug report / Idea's 1.20
- zero-commander ALIENGROUP Bug report / Idea's 1.20
- Oxygene ALIENGROUP Bug report / Idea's 1.20
- Gettler & Grind King ???? Bug report / Idea's 1.20
- Dope Spaceballs Bug report / Idea's 1.25
- Mario Euphoria Bug report / Idea's 1.25
- Ritgore Team Hoi Bug report / Idea's 1.25
- +++++++++++++++++++++
- ------------------------------+Special Thanx go to+--------------------------
- +++++++++++++++++++++
- BlackHawk Paradox >80 column editor solution !!
- -----------------------------------------------------------------------------
-
-
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- ===============================================================================
- !! IMPORTANT !! !! IMPORTANT !! !! IMPORTANT !! !! IMPORTANT !! !! IMPORTANT !!
- ===============================================================================
-
- If u got any bug reports or great ideas please sent them to :
-
- T.F.A.
- P.O. BOX 2249
- 1200 CE HILVERSUM
- HOLLAND
-
- OR leave EMail
-
- Price@hstorm.hacktic.nl
-
-
- OR CALL
-
- +31-(0)35-855918 - TOTAL CONFUSION - 16.8Dual (14.4K+ only)
- Use the asm-one 'REPORTER' door installed
- Leave a msg to the Sysop 'Telekinetic' or Price.
-
-
- +31-(0)35-035-837926 - Morbid violence - 14.4 HST (2400 - 14.4K)
- Use the asm-one 'REPORTER' door installed
- This BBS is now on-line and has a second Asm-One Support
- area. This way you have 2 places to call in stressy times.
- Leave a msg to the Sysop 'Inkey' or Price.
-
-
- +49-448-877020 - Ulixys Dual - (14.4K+ only)
- Use the asm-one 'REPORTER' door installed
- Leave a msg to the Sysop 'Galaxy' or Price.
-
-
- !!!!!!!!!! THERE IS A SPECIAL ASM-ONE SUPPORT CONFERENCE !!!!!!!!!!
-
- ----------------------------------------------------------------------------
- NOTE: date 22 Januari 1994
- A lot of coders have found their way to Total Confusion. We of T.F.A.
- think this should continue !!
-
- We are currently discusing the possebility of starting a MC68xxx
- coders network. In this network we want to create a net where users
- (only coders allowed) can exchange message's/information/sources.
-
- If you or a close friend have a BBS (must be a little known) which
- wants to join in this venture please call or write to us at the above
- address.
-
- NOTE 2: date 26 March 1994
-
- Ulixys bbs using Asm-One reporter now.
- This will allow german coders to call national and still get support
- and responses of questions and idea's within a very short period of
- time......
-
- ----------------------------------------------------------------------------
-
-
- When sending a bug report :
-
- Please include the configuration u are using (Processor, Memory, Drives,
- Harddisks you are using).
-
- << INCLUDE THE .PREF file you use >>
-
-
- Give a general disciption of your source. (If no problem, include the
- part which is the boogie).
-
- Give a discription of your actions starting
- at the point of declaring memory !! (Max and used mem !!!!!)
-
-
- When sending new idea's :
-
- If posible please include a little demo source of how you think the idea you
- send in could work.
-
- Remember it must be a kickstart 1.2/1.3/2.0/3.0 compatible source
- (may be 2 sources, one for 1.2/1.3 and one for 2.0/3.0)
-
- =====> If you include a disk and partial source you will recieve the latest
- version of ASM-One. (when released)
-
-
- ===============================================================================
- !! IMPORTANT !! !! IMPORTANT !! !! IMPORTANT !! !! IMPORTANT !! !! IMPORTANT !!
- ===============================================================================
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- It only makes the program more efficiently !!!
-
- Signed : Price
-